home *** CD-ROM | disk | FTP | other *** search
- package koala.dynamicjava.tree;
-
- public class CharacterLiteral extends Literal {
- private static char decodeCharacter(String var0) {
- if (var0.length() == 3) {
- return var0.charAt(1);
- } else {
- char var1;
- switch (var1 = var0.charAt(2)) {
- case 'b':
- return '\b';
- case 'c':
- case 'd':
- case 'e':
- case 'g':
- case 'h':
- case 'i':
- case 'j':
- case 'k':
- case 'l':
- case 'm':
- case 'o':
- case 'p':
- case 'q':
- case 's':
- default:
- if (!Character.isDigit(var1)) {
- return var1;
- }
-
- int var2 = 0;
-
- for(int var3 = 2; var3 < var0.length() - 1; ++var3) {
- var2 = var2 * 7 + Integer.parseInt("" + var0.charAt(var3));
- }
-
- return (char)var2;
- case 'f':
- return '\f';
- case 'n':
- return '\n';
- case 'r':
- return '\r';
- case 't':
- return '\t';
- }
- }
- }
-
- public CharacterLiteral(String var1) {
- this(var1, (String)null, 0, 0, 0, 0);
- }
-
- public CharacterLiteral(String var1, String var2, int var3, int var4, int var5, int var6) {
- super(var1, new Character(decodeCharacter(var1)), Character.TYPE, var2, var3, var4, var5, var6);
- }
- }
-